package role_api

import "benkendSystem/api"

// AddRoleRequest 添加角色的结构体
type AddRoleRequest struct {
	Name    string  `json:"name"`
	Sort    int     `json:"sort"`
	IsAdmin bool    `json:"is_admin"`
	Remark  string  `json:"remark"`
	MenuId  []int64 `json:"menu_id"`
}

// DeleteRoleRequest 删除角色
type DeleteRoleRequest struct {
	ID uint64 `json:"id"`
}

// GetRoleRequestList 获取角色列表
type GetRoleRequestList struct {
	*api.QueryRequest
}

// AllRoleListReply 返回角色的结构体
type AllRoleListReply struct {
	ID        uint64 `json:"id"`
	Name      string `json:"name"`
	CreatedAt string `json:"created_at"`
	UpdatedAt string `json:"updated_at"`
}

// GetRoleDetailReply 返回角色详情
type GetRoleDetailReply struct {
	ID int64 `json:"id"`
	AddRoleRequest
}

// GetRoleListReply 查询角色返回结构体
type GetRoleListReply struct {
	Name    string `json:"name"`
	Sort    int    `json:"sort"`
	IsAdmin bool   `json:"is_admin"`
}

// UpdateRoleRequest 更新角色
type UpdateRoleRequest struct {
	ID int64 `json:"id"`
	AddRoleRequest
}

// AddRoleForUserRequest 将人员添加到角色中
type AddRoleForUserRequest struct {
	UserIds []int64 `json:"user_ids"`
	RoleId  int64   `json:"role_id"`
}

// GetUserFromRoleRequestList 根据角色获取用户
type GetUserFromRoleRequestList struct {
	Name string `json:"name"`
}
